Published on

Jetson 常用命令速查表

Jetson 常用命令速查表

在 Jetson 平台上进行开发调试时,经常会用到一些特定的命令和工具。本文汇总了最常用的命令,按功能分类整理,方便快速查阅。

适用平台:Jetson Orin/Nano/Xavier/TX 系列 系统环境:L4T / JetPack 5.x / 6.x


📊 一、系统监控与状态查询

1. jtop - 综合监控工具(推荐)

最强大的 Jetson 系统监控工具,需要先安装 jetson-stats

# 安装
sudo pip3 install -U jetson-stats

# 启动
jtop

功能特性:

  • 实时显示 CPU/GPU/内存/引擎使用率
  • 查看温度和风扇转速
  • 切换电源模式
  • 支持 Docker 容器内运行

2. tegrastats - 轻量级系统统计

系统自带,无需安装,适合快速查看:

# 每秒刷新一次
tegrastats --interval 1000

输出示例:

CPU [0%@1020,1%@1020,2%@1020,3%@1020] 
GR3D_FREQ 500MHz@37% 
RAM 2841/15248MB 
TEMP 45.5°C 
VDD_IN 2345mW

3. jetson_release - 查看系统版本

显示 JetPack 版本、L4T 版本、内核版本等:

jetson_release

4. 设备树和兼容性信息

# 查看板卡兼容性字符串
cat /proc/device-tree/compatible

# 提取完整设备树
dtc -I fs -O dts -o extracted.dts /proc/device-tree

🔌 二、GPIO 操作与控制

注意:从 JetPack 5.x 开始,旧的 sysfs 接口 (/sys/class/gpio) 已被弃用,推荐使用 libgpiod

1. gpiodetect - 列出 GPIO 芯片

gpiodetect

输出示例:

gpiochip0 [tegra-gpio] (512 lines)

2. gpioinfo - 查看引脚信息

显示所有 GPIO 引脚的状态、名称、方向等:

gpioinfo
gpioinfo gpiochip0  # 指定芯片

3. gpioset - 设置 GPIO 输出

# 设置引脚为高电平
gpioset gpiochip0 96=1

# 设置引脚低电平,1秒后自动恢复
gpioset --mode=time -s 1 gpiochip0 96=0

4. gpioget - 读取 GPIO 输入

gpioget gpiochip0 96

5. 内核调试接口

查看内核 GPIO 调试信息:

cat /sys/kernel/debug/gpio

🧩 三、Pinmux 引脚复用配置

1. busybox devmem - 读写物理寄存器

需要先安装 busybox:

sudo apt install busybox

常用操作

# 读取寄存器值
sudo busybox devmem 0x2430070

# 写入寄存器(32位)
sudo busybox devmem 0x2430070 w 0x004

典型应用场景:动态修改 GPIO 的 Pinmux 配置(如解决 JetPack 6 中的 tristate 问题)。

2. pinctrl 调试接口

查看引脚组的 pinctrl 配置:

# 查看所有引脚组配置
cat /sys/kernel/debug/pinctrl/2430000.pinmux/pinconf-groups

# 查看特定引脚信息
cat /sys/kernel/debug/pinctrl/2430000.pinmux/pins | grep -A 5 "offset 0x70"

3. jetson-io - GPIO 引脚配置工具

NVIDIA 官方提供的图形化配置工具:

sudo /opt/nvidia/jetson-io/jetson-io.py

功能:配置 40-Pin 接口各引脚的功能模式(I2C/SPI/UART/GPIO 等)。


⚡ 四、电源与性能管理

1. nvpmodel - 电源模式管理

# 查看当前模式
sudo nvpmodel -q

# 切换模式(0 = MAXN,最高性能)
sudo nvpmodel -m 0

2. jetson_clocks - 锁定最高频率

# 锁定 CPU/GPU 到最高频率
sudo jetson_clocks

# 查看状态
sudo jetson_clocks --status

# 查看当前频率设置
sudo jetson_clocks --show

3. CPU 核心管理

# 查看在线 CPU 核心
cat /sys/devices/system/cpu/online

# 查看 CPU 频率
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq

🐍 五、Python GPIO 库

1. jetson-gpio - Python GPIO 控制库

NVIDIA 官方 GPIO 库,兼容 RPi.GPIO API:

import Jetson.GPIO as GPIO

# 设置引脚模式
GPIO.setmode(GPIO.BOARD)
GPIO.setup(31, GPIO.OUT)
GPIO.output(31, GPIO.HIGH)

2. libgpiod Python 绑定

import gpiod

chip = gpiod.Chip('gpiochip0')
line = chip.get_line(96)
line.request(consumer='my_app', type=gpiod.LINE_REQ_DIR_OUT)
line.set_value(1)

📋 六、快速参考表

功能分类命令简要说明
系统监控jtop综合监控仪表
tegrastats轻量级统计
jetson_release查看 JetPack 版本
GPIOgpiodetect列出 GPIO 芯片
gpioinfo查看引脚信息
gpioset设置输出值
gpioget读取输入值
Pinmuxbusybox devmem读写物理寄存器
jetson-io.py图形化引脚配置
/sys/kernel/debug/pinctrl/pinctrl 调试接口
电源管理nvpmodel -q查看电源模式
nvpmodel -m N切换电源模式
jetson_clocks锁定最高频率
设备树dtc -I fs -O dts提取设备树
/proc/device-tree/查看运行时设备树

⚠️ 注意事项

  1. GPIO 编号需要核对:不同 Jetson 型号的 GPIO 编号不同,使用前建议用 gpioinfo 确认。

  2. JetPack 版本差异:JetPack 6.x 中 sysfs GPIO 接口被移除,必须使用 libgpiod。

  3. Tristate 问题:在 JetPack 6 中,GPIO 可能需要额外配置 tristate 才能正常输出。

  4. devmem 修改临时生效:用 busybox devmem 修改的寄存器值在重启后会丢失,永久修改需要修改设备树并重新烧录。


🔗 扩展资源


最后更新:2026-05-18

THE END